The present invention relates to a device for redundancy termination of cell streams incoming from two parallel switching planes.
Switches for e.g. ATM-networks are required to switch cells in a data cell stream at a very high speed from the input ports to the output ports thereof. Some of the processing inside such switches is always performed in a parallel way, using a high clock frequency, the processing being made by hard-wired components not requiring any soft-ware. In order to obtain a sufficient reliability the switches are often duplicated, so that for each switch, also called plane, is a parallel plane arranged. At the outputs ports of two parallel planes only one cell of the two cells obtained from the planes at each cell time must be selected, this procedure being called redundancy termination.
A general problem related to ATM-switches having redundancy in the shape of two identical, parallel switching planes operating independently of each other is that the two planes do not execute their switching operations synchronously. Thus, in selection situation different results can be obtained, i.e. different cells are selected. If the switch receives two cells, which are to be switched to the same output port, one of the planes can select one of the cells and the other plane the other cell, i.e. the results from the two planes are different. Further, if buffers are arranged in the switch, one can obtain quite different sequences of cells out of the two planes. Thus, it will be difficult for the receiver of the cell sequences to determine the plane from which it is to take cells. A frequent method of solving this problem is to determine to always take cells from one plane. If this plane goes faulty, quite a long time can elapse before the defectiveness of the plane is detected when the other plane is selected. During the time period from the occurrence of an error up to the change of plane several cells can get lost.
Such a switch core switching cells from a plurality of input ports to a plurality of output ports can in some cases handle two different kinds of cells which are transmitted in different ways. The first kind of cells, also called unicast cells, are transmitted through the switch core in the conventional way, being routed from an input port to a definite output port which may be specified in a header portion of the cell. The second kind of cells, also called multicast cells, are almost simultaneously transmitted to all the output ports of the switch core or to a group of output ports. When the transmission over such a switch core is made redundant by introducing a second switch core operating in parallel to and independently of the first switch core, also problems related to in particular the multicast cells may arise when a termination of the redundant planes has to be made.
A redundancy termination device for an ATM-switch is disclosed in the published International patent application WO 93/15579. In the conventional way the cell arriving first to the termination device is selected. However, in a fast ATM-switch having planes operating in relatively primitive way, i.e. in a directly parallel and simple way, no such timing differences may exist. Cells transferred through the parallel planes will then always arrive at a definite time and a selection cannot be based on time differences. Also, the processing required for processing times may too consuming in itself. In a fast switch, also some kind of confirming receipt of cells is required, such as disclosed in e.g. U.S. Pat. No. 5,361,255. Acknowledging/negatively acknowledging signals are then as conventional sent to the source issuing the cells.
It is an object of the present invention to provide a redundancy termination reducing the risk of loosing cells in the case where one of parallel planes goes defective.
The problem solved by the invention is thus how to provide, in a fast switch having parallel planes, a redundancy termination which can work sufficiently fast and has a quick response to faults so that losses of cells are minimized in the case of a fault.
This object is generally achieved by always listening to all parallel planes, at each instant when a cell selection is to be made, and then making a best choice in the selecting process.
In a switch having two parallel switching operating independently for providing redundancy to the switch, cells are received from the two planes by a redundancy terminating unit. This unit has simple switching means separating the received cells according to whether they are ordinarily switched cells, called unicast cells, or cells which are switched or copied to a plurality of the outputs of the planes, these cells being called multicast cells. At each cell time a selection of one received cell is made by a selector control unit and this selection is made substantially at random, among possible received unicast cells and a multicast cell as stored in a buffer memory of the type first-in-first-out. If received cells have different priorities the random selection is made only among cells having the maximum priority of the priority of the received cells. A unicast cell which is not selected is discarded but a non-selected multicast cell remains in the buffer until it is selected. This random plane selection is executed in a fast and simple way and gives a very quick response to many faults in the switch core.
Thus, in a switch having at least two parallel switching planes, each switching plane receiving cells to provide a cell stream on each of the outputs of the plane, a redundancy terminating unit is provided connected to only one output of each plane for receiving parallel cell streams from each connected output. The redundancy terminating unit comprises a selector unit which each cell time selects one cell substantially at random from one of the parallel cell streams, so that the selected cell then is output or transmitted from the redundancy terminating unit and the non-selected cell can be discarded. Often cells have different priorities and then the selector unit selects a cell at random only among cells having the same priority, this priority being the highest one of the priorities of the cells among which the selection is made.
To provide for a secure transport of cells the selector unit can send an acknowledging message for a cell which is selected and a negatively acknowledging message for a cell which is not selected, these messages being sent to some earlier stage transmitting cells to the planes. A cell for which a negatively acknowledging message has been received by such an earlier stage can then be retransmitted to the switching planes.
Further, the cells transmitted in the switch can be different kinds, such as unicast cells or multicast cells, where the unicast cells are switched in the ordinary way to only one output of each switching plane and the multicast cells are switched to a group of outputs of each switching plane, such a group then holding at least two outputs. A buffer memory in the redundancy terminating unit can then be connected to receive only multicast cells from the outputs of the planes and then the selector can make its selection of a cell among unicast cells received each cell time and one cell stored in the buffer memory, preferably that cell stored in the buffer memory, which has been stored there for the longest time.
For managing the buffer memory control means can be provided which removes a multicast cell stored in the buffer memory only when this multicast cell has been selected by the selector unit, this implying that every multicast cell will be eventually selected and that no multicast cell will be discarded in the selection process, what can happen for unicast cells. Also, a filter unit may be arranged in the redundancy terminating unit, which receives multicast cells and discards such multicast cells, a copy of which has been earlier stored in the buffer memory. In that way, such earlier stored multicast cells will not be stored once more in the buffer memory. A line from the buffer memory to the selector unit can signal that the filling level in the buffer memory is too high, i.e. higher than some predetermined threshold value, and the selector unit will when receiving such signalling always select a cell from the buffer memory and not among possible unicast cells.
Additional objects and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The objects and advantages of the invention may be realized and obtained by means of the methods, processes, instrumentalities and combinations particularly pointed out in the appended claims.